<template>
  <div v-if="pageflag" class="right_center_wrap beautify-scroll-def" :class="{ 'overflow-y-auto': !sbtxSwiperFlag }">
    <component :is="components" :data="list" :class-option="defaultOption">
      <ul class="right_center">
        <li class="right_center_item" v-for="(item, i) in list" :key="i">
          <span class="orderNum">{{ i + 1 }}</span>
          <div class="inner_right">
            <div class="dibu" :class="{ 'last-dibu': i === list.length - 1 }"></div>
            <div class="flex">
              <div class="info">
                <span class="labels">设备NO：</span>
                <span class="contents zhuyao">{{ item.equipmentNo }}</span>
              </div>
              <div class="info">
                <span class="labels">告警值：</span>
                <span class="contents warning">{{ item.value }}</span>
              </div>
            </div>
            <div class="flex">
              <div class="info">
                <span class="labels">设备名称：</span>
                <span class="contents ciyao" style="font-size:12px">{{ item.equipmentName }}</span>
              </div>
              <div class="info time">
                <span class="labels">报警时间：</span>
                <span class="contents" style="font-size:12px">{{ item.addTime }}</span>
              </div>
            </div>
            <div class="flex">
              <div class="info">
                <span class="labels">报警类型：</span>
                <span class="contents ciyao" :class="{ warning: item.alertdetail }">{{ getTypeDescription(item.type) }}</span>
              </div>
            </div>
          </div>
        </li>
      </ul>
    </component>
  </div>
  <Reacquire v-else @onclick="getData" style="line-height:200px" />
</template>

<script>
import { getWaring } from '@/api/getwaring'
import "@/assets/css/index.scss"
import vueSeamlessScroll from 'vue-seamless-scroll'  // vue2引入方式
import Kong from '../../components/kong.vue'

export default {
  components: { vueSeamlessScroll, Kong },

  data() {
    return {
      list: [],
      pageflag: true,
      defaultOption: {
        ...this.$store.state.setting.defaultOption,
        singleHeight: 240, 
        step: 0,
      },
      typeMap: {
        '01': '浓度异常',
        '02': '温度异常'
      }
    };
  },
  computed: {
    sbtxSwiperFlag() {
      let ssyjSwiper = this.$store.state.setting.ssyjSwiper
      if (ssyjSwiper) {
        this.components = vueSeamlessScroll
      } else {
        this.components = Kong
      }
      return ssyjSwiper
    }
  },
  created() {
    this.getData()
  },
  methods: {
    getData() {
      this.pageflag = true
      getWaring().then(res => {
        // console.log('实时预警', res);
        this.list = res.msg;
        let timer = setTimeout(() => {
          clearTimeout(timer);
          this.defaultOption.step = this.$store.state.setting.defaultOption.step;
        }, this.$store.state.setting.defaultOption.waitTime);
      });
    },
    getTypeDescription(type) {
      return this.typeMap[type] || type;
    }
  }
};
</script>

<style lang='scss' scoped>
.right_center {
  width: 100%;
  height: 100%;

  .right_center_item {
    display: flex;
    align-items: center;
    justify-content: center;
    height: auto;
    padding: 10px;
    font-size: 14px;
    color: #e0d127;

    .orderNum {
      margin: 0 20px 0 -20px;
    }

    .inner_right {
      position: relative;
      height: 100%;
      width: 400px;
      flex-shrink: 0;
      line-height: 1.5;

      .dibu {
        position: absolute;
        height: 2px;
        width: 104%;
        background-image: url("../../assets/img/zuo_xuxian.png");
        bottom: -12px;
        left: -2%;
        background-size: cover;
      }

      .last-dibu {
        bottom: 12;
      }
    }

    .info {
      margin-right: 10px;
      display: flex;
      align-items: center;

      .labels {
        flex-shrink: 0;
        font-size: 12px;
        color: rgba(255, 255, 255, 0.6);
      }

      .zhuyao {
       // color: $primary-color;
        font-size: 15px;
      }

      .ciyao {
        color: rgba(255, 255, 255, 0.8);
      }

      .warning {
        color: #E6A23C;
        font-size: 15px;
      }
    }
  }
}

.right_center_wrap {
 overflow: hidden;
  width: 103%;
  height: 3rem;
}

.overflow-y-auto {
  overflow-y: auto;
}
</style>
